home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 476-500 / disk_492 / loancalc / lc.doc < prev    next >
Text File  |  1992-05-06  |  13KB  |  329 lines

  1.                              LoanCalc V1.4
  2.                              =============
  3.  
  4. Although there are many mortgage calculation programs available, all that
  5. I have seen are designed around 'fixed' mortgages, ie. mortgages that have
  6. a fixed payment due on a fixed date.  As well as providing a printed
  7. Amortization Table for Fixed Mortgages with Monthly, Semi-Monthly, Bi-Weekly
  8. and Weekly payment schedules, (including a provision for making Lump Sum
  9. Payments), LoanCalc (LC) is designed to track 'Open' mortgages that allow 
  10. any size payment to be made at any time.
  11.  
  12. If you are looking for a program that will quickly give you payments or
  13. amortization periods of loans with fixed monthly payments, without the 
  14. printed Amortization Table, I can heartily recommend MortCalc, written by 
  15. Michel Laliberte, available on Fish 385.  It will be easier to use for this
  16. purpose.  The advantage of LC is the flexability to calculate repayment
  17. schedules for almost any timetable, the Lump Sum Payment option, the Open 
  18. Mortgage option, and the ability to give you a printed Amortization Table.
  19.  
  20. I apologize for the size of this program.  Being a 'weekend' programer,
  21. my programing style could not be described as elegant.  The program is 
  22. written in BASIC, compiled with the HiSoft BASIC Professional compiler.
  23. To anyone out there who still programs with the AmigaBASIC interpreter -
  24. I admire your dedication. The frustration of it all was just too much for me.
  25. Look into HiSoft BASIC Professional, and put the joy back into programing.
  26.  
  27.  
  28. This version of LC supports both mouse and keyboard for most of its
  29. functions, the major exception of course being specific data which must
  30. be input (ie. payments, dates, etc), and it uses the ARP requester for the
  31. input of filenames.  At any time, if the 'Esc' key is hit, then LC 
  32. will escape from the data entry mode and return to the Main Menu.
  33.  
  34.  
  35. LC generally multitasks very well.  While waiting for input, the program is
  36. 'sleeping', and therefore does not use up CPU time needlessly.  However,
  37. you may occasionally get a "Device unavailable in module SOUND" error, which
  38. will abort the program.  This is a problem with the HiSoft compiler - their
  39. SOUND command does not multitask well at all.  I have tried to discuss this
  40. problem with the folks at MichTron, but they will not return phone calls, 
  41. (I think it must be a company policy).  At any rate, if you encounter this, 
  42. closing other tasks will generally solve the problem.
  43.  
  44.  
  45. If LC is launched from Workbench, icons will be created for all '.data' files
  46. created, in case you would like to edit the file.  These icons have no
  47. default tool, however, since I don't know which editor you would be using to 
  48. edit the file.  You can supply your own using the Workbench 'Info' Menu item.
  49.  
  50. If launched from the CLI, no icons are created.
  51.  
  52.  
  53. While running, LC will request a directory and filename under which the
  54. program data will be kept.  The default directory is RAM:, but you may
  55. specify any other.  Two files will then be generated in that directory.  
  56. One, 'Filename.data', will store all information regarding payments made, 
  57. dates, interest paid, total interest, etc.  The other, 'Filename.datavar', 
  58. will store all the variables required by LC, which will vary from one session
  59. to the next.  Copy these files to a disk for a permanent record.
  60.  
  61.  
  62. While entering data (especially data for Open Mortgages), there are lots of
  63. tiresome 'Are you sure?' type prompts.  Although nobody likes them when 
  64. the data is correct, they are useful in case of finger-trouble.
  65.  
  66.  
  67.                                   -2-
  68.  
  69. LC opens on the Main Menu, where there are 8 selections:
  70.  
  71.      1.  Start a New Mortgage/Loan File
  72.      2.  Enter a Payment to an Existing Open-type File
  73.      3.  Re-Calculate the Current Fixed-type Loan
  74.      4.  View a Data File
  75.      5.  Send a File to the Printer
  76.      6.  Information
  77.      7.  About
  78.      8.  Quit
  79.  
  80. Just Click on the appropriate item, or press the appropriate number 
  81. on either number pad.
  82.  
  83.  
  84. Selection 1 should be made if you have not already opened a file under
  85. the proposed filename, for example 'FirstMortgage', and there is no 
  86. 'FirstMortgage.data' and 'FirstMortgage.datavar' files in the specified
  87. directory.  A file will then be built from scratch.
  88.  
  89. The Open-type file will be built one entry at a time, using the data entered.
  90. This option is good for Open Mortgages, Line of Credit type loans,
  91. or any loan that does not have a Fixed repayment schedule.
  92. This file cannot 'think ahead', because it cannot predict when your payments
  93. will be made, or exactly how large or how small they will be.
  94. Once a data entry (payment) has been made, you have the option of making 
  95. another (Press any key), totaling the file (Left Alternate-Shift-T),
  96. or returning to the Menu (Escape).  Left Alternate-Shift-T merely prints 
  97. a footnote to the file, stating your Total Payments so far and by how much 
  98. the Principal was reduced, and then returns you to the Menu.  It is intended 
  99. to be used after the last payment is made, but may be used beforehand.
  100.  
  101. The Fixed-type file will take all the parameters pertinent to your loan,
  102. and then display some summary information about your loan; ie. the Unit
  103. Payment (Installment), the Total Interest to be paid, the Actual (Effective)
  104. Interest Rate, and the Amortization Period.  You may then Return to the Main
  105. Menu, Re-enter data, or request the Amortization Table.  In the last case you
  106. will be prompted for the number of months you want the Table shown.
  107. The Amortization Table for that loan will be shown for any period
  108. from one month, up to the Amortization Period of the loan.
  109.  
  110. If you are allowed to make lump sum payments to your Fixed loan, then run
  111. the Amortization Table for a number of months such that the last payment
  112. displayed is the date on which the lump sum payment is to be made,
  113. then use the 'L' option to show your Lump Sum Payment.
  114. The Principal reduction will be made on that date.  Since all payments must
  115. be made in chronological order, once the Amortization Table has been
  116. displayed for a month beyond one in which you want to make a 
  117. lump sum payment, you would have to go back to Selection 3,
  118. and re-select the number of months to display.
  119.  
  120.  
  121. Selection 2 should be made to enter more payments to an Open Mortgage/Loan
  122. file which has already been opened with Selection 1.  Although there is a 
  123. provision to make lump payments on a Fixed-type loan, that is not done using
  124. this Menu item.  Note that if you are updating a file, the 'Filename.datavar'
  125. file must be situated in the same directory as the 'Filename.data' file.
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.                                   -3-
  134.  
  135. Selection 3 is for Fixed-type loans only.  If you have already entered the
  136. Mortgage/Loan parameters (Principal, Interest Rate, Commencement Date,
  137. Interest Compound Period and Filename), the LC will use these numbers,
  138. ask for confirmation, and request the Amortization Period/Monthly Payment.
  139. Any changes to these parameters may be made at this time.
  140. In this way, the same numbers can be quickly 'fiddled' to show various
  141. combinations of these variables.  This feature cannot be used for Open-type
  142. loans for the reason mentioned above - Open loan payments cannot be predicted.
  143.  
  144.  
  145. Selection 4 will ask for the filename of the '.data' file you want to View.
  146. Select the path and 'Filename.data' from the requester.  
  147. (The program will not accept any filename which does not end in '.data').
  148. You may then see the file almost exactly as it will look when printed
  149. using Selection 5 - (The printed version will be page formated).
  150. The data you will be looking at is the same data that was put on the screen;
  151. IF IT WASN'T ON THE SCREEN, IT WON'T BE IN THE DATA FILE.  So if you want to 
  152. see (or print) the whole Amortization Table in the data file, press <Return>
  153. when when prompted 'Amortization Table for how many months', so that
  154. the whole Table will be calculated and displayed.
  155.  
  156. A text reader such as the enclosed View program would be ideal for looking at
  157. these files, as you may have noticed if you have examined the sample files
  158. enclosed with this program.  However, I wanted the program to be completely 
  159. stand-alone, and so opted to include the primitive forward-only viewer.
  160.  
  161.  
  162. Selection 5 will ask for the filename of the file you want printed.
  163. Select the filename as in the previous selection.  The requested 
  164. 'Filename.data' file will then be sent to the PRT: device.
  165.  
  166.  
  167. Selection 6 just recaps a bit of the information in this file, in case
  168. nobody reads it.
  169.  
  170.  
  171. Selection 7 tells you who to blame if something goes wrong.
  172.  
  173.  
  174. Selection 8 Exits the program, after confirmation.
  175.  
  176.  
  177.  
  178. I have included woth this program 4 sample '.data' files to give you an idea 
  179. of what your print-out will look like.  The 4 files represent the same
  180. $100,000 mortgage, with an Interest Rate of 12.75%, amortized over 5 years,
  181. and includes one lump sum payment made on the second anniversary of the loan.
  182. One shows the Amortization Table if you had chosen to repay the mortgage
  183. with Monthly payments, another with Semi-Monthly payments, and the others
  184. with Bi-Weekly and Weekly payments.
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.                                   -4-
  200.  
  201.                      The INTEREST COMPOUND PERIOD
  202.                      ----------------------------
  203.  
  204. Although LC will accept an I.C.P. of almost any frequency, the standard
  205. frequencies appear to be as follows, and should be used unless you know
  206. that your situation is different:
  207.  
  208. Canadian Mortgages are compounded Semi-Annually.
  209. American Mortgages and both Canadian and American bank loans are compounded
  210. Monthly.  Very few bank employees seem to know this - during my enquiries I
  211. got a lot of different answers, but the hard figures always came down to 
  212. 'Monthly Compounded Interest".  This information is also shown in the program.
  213.  
  214.  
  215.                              The PRINT-OUT
  216.                              -------------
  217.  
  218. The 'Payment' date shown for each payment will depend on the type of
  219. Mortgage/Loan you select, as follows:
  220.  
  221. Open Mortgages:
  222. will naturally show the payment on whatever date you enter.
  223.  
  224. Fixed Mortgages:
  225. If you choose to make Monthly Payments, then the payments will be shown
  226. as due on the day of the month that the loan was taken out.  So if you
  227. want payments due on the 1st of the month, show the loan as starting
  228. on the 1st day of the previous month.  
  229.  
  230. Semi-Monthly Payments are always shown as due on the 1st and 15th day
  231. of the month.
  232.  
  233. Bi-Weekly Payments are shown as first due 14 days after the starting date
  234. of the loan, and due every 14 days thereafter.
  235.  
  236. Weekly Payments are shown as first due 7 days after the starting date
  237. of the loan, and due every 7 days thereafter.
  238.  
  239.  
  240.  
  241.                                REQUIREMENTS
  242.                                ------------
  243.  
  244. Workbench 1.3 is required because of the math libraries.
  245.  
  246. The arp.library is required because of the ARP requester.
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.                                   -5-
  266.  
  267.  
  268.                               LIMITATIONS
  269.                               -----------
  270.  
  271. Some limitations of LC are:
  272.  
  273. All Open Loan data entries MUST be in chronological order.  
  274. (I just plain didn't know how to avoid this).
  275.  
  276. Also with Open Loans, a data entry must be made every 6 months or so.
  277. This as necessary to keep the year-ends straight, so that LC knows which
  278. are leap-years.  (The formula is slightly different in leap-years).
  279.  
  280. There is a bug that seems to crop up every now and again.
  281. As LC is writing some information to a .data or .datavar file,
  282. a FILE ALREADY OPEN error will sometimes pop up.  As all of my OPEN
  283. commands are immediately preceded by a CLOSE command on the same line,
  284. I am confused as to why this would happen.  (A lot of YOU probably know,
  285. but I don't).  At any rate, I built a RESET command into the 
  286. Error Handler, which seems to work well enough to allow the file to be
  287. rebuilt from Menu Item 3, rather than have to start from scratch at
  288. Menu Item 1.
  289.  
  290.  
  291.  
  292.                                ACCURACY
  293.                                --------
  294.  
  295. To the best of my knowledge, this program is now as accurate as any other
  296. similar programs available.  Monthly payment figures seem to agree with
  297. those found in commercial Amortization Tables.
  298.  
  299.  
  300.  
  301.                 FILES INCLUDED WITH THIS PROGRAM
  302.                 --------------------------------
  303.  
  304. LC                                           LC.info
  305. LC.doc                                       LC.doc.info
  306. Changes                                      Changes.info
  307. Monthly.data                                 Monthly.data.info
  308. Semi-Monthly.data                            Semi-Monthly.data.info
  309. Bi-Weekly.data                               Bi-Weekly.data.info
  310. Weekly.data                                  Weekly.data.info
  311. View - the PD text reader by Bryan Ford (available on Fred Fish disk #163).
  312. arp.library V39.1 - in case there is still someone out there who is not
  313.                     utilizing this marvelous software.  Just put it into
  314.                     your LIBS: directory, and leave it there.
  315.  
  316.  
  317.  
  318. Hope someone finds this useful.
  319.  
  320.  
  321.  
  322. Any comments, problems or bug reports are welcome.  Please send to:
  323.  
  324.  
  325.             Robert Bromley
  326.             4080 Longo Circle
  327.             Malton, Ontario
  328.             CANADA  L4T 4C7
  329.